Reliable and Efficient Computational Geometry Via Controlled Perturbation
نویسندگان
چکیده
Most algorithms of computational geometry are designed for the RealRAM and non-degenerate inputs. We call such algorithms idealistic. Executing an idealistic algorithm with floating point arithmetic may fail. Controlled perturbation replaces an input x by a random nearby x̃ in the δ -neighborhood of x and then runs the floating point version of the idealistic algorithm on x̃. The hope is that this will produce the correct result for x̃ with constant probability provided that δ is small and the precision L of the floating point system is large enough. We turn this hope into a theorem for a large class of geometric algorithms and describe a general methodology for deriving a relation between δ and L. We exemplify the usefulness of the methodology by examples. Most algorithms of computational geometry are designed for Real-RAMs and nondegenerate inputs. A Real-RAM computes with real numbers in the sense of mathematics. The notion of degeneracy depends on the problem; examples are collinear or cocircular points or three lines with a common point. We call an algorithm designed under the two simplifying assumptions an idealistic algorithm. Implementations have to deal with the precision problem (caused by the Real-RAM assumption) and the degeneracy problem (caused by the non-degeneracy assumption). The exact computation paradigm [10, 9, 3, 14, 12, 13] addresses the precision problem. It proposes to implement a Real-RAM tuned to geometric computations. The degeneracy problem is addressed by reformulating the algorithms so that they can handle all inputs. This may require non-trivial changes. The approach is followed in systems like LEDA and CGAL. Halperin et al. [5, 7, 6] proposed controlled perturbation to overcome both problems. The idea is to solve the problem at hand not on the input given but on a nearby input. The perturbed input is carefully chosen, hence the name controlled perturbation, so that it is non-degenerate and can be handled with approximate arithmetic. They applied the idea to three problems (computing polyhedral arrangements, spherical arrangements, and arrangements of circles) and showed that variants of the respective idealistic algorithms can be made to work. Funke et al. [4] extended their work and showed how to use controlled perturbation in the context of randomized algorithms, in particular randomized incremental constructions, and designed specific schemes for planar Delaunay triangulations and convex hulls and Delaunay triangulations in arbitrary dimensions. We extend their work further. We prove that controlled perturbation and guarded tests are a general conversion strategy for a wide class of geometric algorithms; the papers ? Partially supported by the IST Programme of the EU under Contract No IST-006413, Algorithms for Complex Shapes (ACS). cited above hint at this possibility but do not prove it. Moreover, we develop a general methodology for analyzing controlled perturbation, in particular, for deriving quantitative relations between the amount of perturbation and the precision of the approximate arithmetic. 1 Controlled Perturbation (Review from [4]) Geometric algorithms branch on geometric predicates. Typically, geometric predicates can be expressed as the sign of an arithmetic formula E. For example, the orientation predicate for d +1 points in Rd is given by the sign of a (d +1)× (d +1) determinant: the determinant has one row for each point and the row for a point contains the coordinates of the point followed by the entry 1 and evaluates to zero iff the d + 1 points lie in a common hyperplane. This is considered a degeneracy. When evaluating an arithmetic formula E using floating-point arithmetic, round-off error occurs which might result in the wrong sign being reported. If this stays undetected, the program may enter an illegal state and disasters may happen, see [11] for some instructive examples. In order to guard against round-off errors, we postulate the availability of a predicate GE with the following guard property: If GE evaluates to true when evaluated with floating point arithmetic, the floating point evaluation (fpevaluation) of E yields the correct sign. In an idealistic algorithm A we now guard every sign test by first testing the corresponding guard. If it fails, we abort. We call the resulting algorithm a guarded algorithm and use Ag to denote it. The controlled perturbation version of idealistic algorithm A is as follows: Let δ be a positive real. On input x, we first choose a δ -perturbation x̃ of x and then run the guarded algorithm Ag on x̃. If it succeeds, fine. If not, repeat. What is a δ -perturbation? A δ -perturbation of a point is a random point in the δ -cube (or δ -ball) centered at the point and for a set of points a δ -perturbation is simply a δ -perturbation of each point in the set. For more complex objects, alternative definitions come to mind, e.g., for a a circle one may want to perturb the center or the center and the radius. The goal is now to show experimentally and/or theoretically that Ag has a good chance of working on a δ -perturbation of any input and a small value of δ . More generally, one wants to derive a relation between the precision L of the floating point system (= length of the mantissa), a characteristic of the input set, e.g., the number of points in the set and an upper bound on the maximal coordinate of any point in the input, and δ . Halperin et al. have done so for arrangements of polyhedral surfaces, arrangements of spheres, and arrangements of circles and Funke et al. have done so for Delaunay diagrams and convex hulls in arbitrary dimensions. We want to stress that a guarded algorithm can be used without any analysis. Suppose we want to use it with a certain δ . We execute it with a certain precision L. If it does not succeed, we double L and repeat. Our main result states that this simple strategy terminates for a wide class of geometric algorithms. Moreover, it gives a quantitative relation between δ and L and characteristic quantities of the instance. Guard predicates must be safe and should be effective, i.e., if a guard does not fire, the approximate sign computation must be correct, and guards should not fire too often unnecessarily. It is usually difficult to analyze the floating point evaluation of GE
منابع مشابه
Controlled linear perturbation
We present a new approach to the robustness problem in computational geometry, called controlled linear perturbation, and demonstrate it on Minkowski sums of polyhedra. The robustness problem is how to implement real RAM algorithms accurately and efficiently using computer arithmetic. Approximate computation in floating point arithmetic is efficient but can assign incorrect signs to geometric p...
متن کاملNumerical Solution of the Controlled Harmonic Oscillator by Homotopy Perturbation Method
The controlled harmonic oscillator with retarded damping, is an important class of optimal control problems which has an important role in oscillating phenomena in nonlinear engineering systems. In this paper, to solve this problem, we presented an analytical method. This approach is based on the homotopy perturbation method. The solution procedure becomes easier, simpler and mor...
متن کاملHomotopy perturbation method for eigenvalues of non-definite Sturm-Liouville problem
In this paper, we consider the application of the homotopy perturbation method (HPM) to compute the eigenvalues of the Sturm-Liouville problem (SLP) which is called non-definite SLP. Two important Examples show that HPM is reliable method for computing the eigenvalues of SLP.
متن کاملSolution of Thermo-Fluid problems in Bounded Domains via the Numerical Panel Method
The classical panel method has been extensively used in external aerodynamics to calculate ideal flow fields around moving vehicles or stationary structures in unbounded domains. However, the panel method, as a somewhat simpler implementation of the boundary element method, has rarely been employed to solve problems in closed complex domains. This paper aims at filling this gap and discusses th...
متن کاملLocal and Global Approaches to Fracture Mechanics Using Isogeometric Analysis Method
The present research investigates the implementations of different computational geometry technologies in isogeometric analysis framework for computational fracture mechanics. NURBS and T-splines are two different computational geometry technologies which are studied in this work. Among the features of B-spline basis functions, the possibility of enhancing a B-spline basis with discontinuities ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2006